package com.wind.taobao.api.trade.shop.convert
{
	import com.wind.taobao.api.trade.shop.model.SellerCat;
	import com.wind.taobao.core.util.TaobaoConstants;

	import mx.collections.ArrayCollection;


	/**
	 *  SellerCat转换器
	 * @author fxy
	 *
	 */
	public class SellerCatConvert
	{
		/**
		 * 转换SellerCat集合
		 */
		public static function convertSellerCats(value:Object, type:String="json"):ArrayCollection
		{
			var sellerCats:ArrayCollection=new ArrayCollection();
			if (value != null)
			{
				if (type == TaobaoConstants.JSON)
				{
					if ((value as Array).length > 0)
					{
						for (var i:uint=0; i < (value as Array).length; i++)
						{
							sellerCats.addItem(convertSellerCat((value as Array)[i]));
						}
					}
				}
				else
				{
					//TODO
				}
			}
			return sellerCats;
		}

		/**
		 * 转换SellerCat
		 */
		public static function convertSellerCat(value:Object, type:String="json"):SellerCat
		{
			var sellerCat:SellerCat=new SellerCat();
			if (value == null)
				return sellerCat;
			if (type == TaobaoConstants.XML)
			{
				sellerCat=convertXMLToSellerCat(XML(value), sellerCat);
			}
			else
			{
				sellerCat=convertJSONToSellerCat(value, sellerCat);
			}
			return sellerCat;
		}

		/**
		 * JSON转换为SellerCat
		 */
		private static function convertJSONToSellerCat(json:Object, sellerCat:SellerCat):SellerCat
		{
			if (json.hasOwnProperty(TaobaoConstants.CID))
			{
				sellerCat.cid=json[TaobaoConstants.CID];
			}
			if (json.hasOwnProperty(TaobaoConstants.PARENT_CID))
			{
				sellerCat.parent_cid=json[TaobaoConstants.PARENT_CID];
			}
			if (json.hasOwnProperty(TaobaoConstants.NAME))
			{
				sellerCat.name=json[TaobaoConstants.NAME];
			}
			if (json.hasOwnProperty(TaobaoConstants.PICT_URL))
			{
				sellerCat.pict_url=json[TaobaoConstants.PICT_URL];
			}
			if (json.hasOwnProperty(TaobaoConstants.SORT_ORDER))
			{
				sellerCat.sort_order=json[TaobaoConstants.SORT_ORDER];
			}
			return sellerCat;
		}

		/**
		 * XML转换为SellerCat
		 */
		private static function convertXMLToSellerCat(value:XML, sellerCat:SellerCat):SellerCat
		{
			return sellerCat;
		}
	}
}